package sk.tuke.serviceInterface;

import javax.ws.rs.Consumes;
import javax.ws.rs.GET;
import javax.ws.rs.POST;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
import javax.ws.rs.core.Response;

import org.apache.cxf.feature.Features;

import sk.tuke.domain.IO.healthcardManagemet.CreateHealthcardInput;
import sk.tuke.domain.IO.healthcardManagemet.CreateMedicalRecordInput;
import sk.tuke.domain.IO.healthcardManagemet.GetHealthCardInput;
import sk.tuke.domain.IO.healthcardManagemet.GetMedicalRecordInput;

@Produces(MediaType.APPLICATION_JSON)
@Features(features = "org.apache.cxf.feature.LoggingFeature")
public interface HealthcardManagementService {

	@POST
	@Path("/createhealthcard")
	@Consumes(MediaType.APPLICATION_JSON)
	public Response createHealthcard(CreateHealthcardInput createHealthcardInput) throws Throwable;

	@POST
	@Path("/createmedicalrecord")
	@Consumes(MediaType.APPLICATION_JSON)
	public Response createMedicalRecord(CreateMedicalRecordInput createMedicalRecordInput) throws Throwable;
	
	@GET
	@Path("/gethealthcard")
	public Response getHealthCard(@QueryParam("") GetHealthCardInput getHealthCardInput) throws Throwable;
	
	@GET
	@Path("/getmedicalrecord")
	public Response getMedicalRecord(@QueryParam("") GetMedicalRecordInput getMedicalRecordInput) throws Throwable;

}
